1. Field of the Invention
This invention relates to features that improve the efficiency of rendering images of three-dimensional objects, and more particularly to a graphics mechanism and apparatus for mipmap level estimation for anisotropic texture mapping, wherein the mipmap estimation technique uses inverse homogenous coordinates only.
2. Description of the Related Art
Aliasing artifacts that arise due to texture mapping are well-known and have been studied by many researchers (see, e.g., [1] A. Watt, "3D Computer Graphics," 2nd edition, Addison-Wesley, 1993 and [2] G. Wolberg, "Digital Image Warping," IEEE Computer Society Press, Los Alamitos, Calif., 1990). Various filtering schemes can be used to deal with this problem (see, e.g., [3] F. Crow, "Summed Area Tables for Texture Mapping", Computer Graphics, 18(3), pp. 207-212, 1984 and [4] N. Greene and P. Heckbert, "Creating Raster Omnimax Images Using the Elliptically Weighted Average Filter," Computer Graphics and Applications, pp. 21-27, June 1986). However, by far the most popular filtering scheme is mipmapping ([5] L. Williams, "Pyramidal Parametrics," Computer Graphics, 17(3), pp. 1-11, 1983). In this method, the original texture is averaged down to successively lower resolutions, each image in the mipmap sequence being one half of the resolution of the previous image. Then, instead of always using the original texture map, an appropriately scaled image is used.
Mipmapping as a technique has several disadvantages. The first inevitable disadvantage is an increase of memory requirements space by 33% [5]. Second, it is necessary to choose an appropriate level of pyramid each time texture mapping is applied ([6] P. Heckbert, "Texture Mapping Polygons in Perspective," Tech. Memo No. 13, NYIT Computer Graphics Lab, April 1983 and [5]). Good selection of mipmap level is key to proper filtering and therefore is very important for image quality, as discussed in U.S. patent application Ser. No. 08/971,972, entitled "Texture Mapping With Improved Technique for Selecting an Appropriate Level in Filtered Representations of the Texture," filed Nov. 17, 1997. Finally, the third disadvantage is due to the possible anisotropy artifact, because, by original construction, mipmapping cannot adequately handle situations where the ratio of either texture or screen dimensions of a surface is significantly different from one.
Various texture mapping techniques have been proposed. For the most part, these techniques do not compute mipmap levels and/or do not address the issue of anisotropy. One such technique is set forth in U.S. Pat. No. 5,224,208. This technique is embodied in a method and apparatus for calculating the gradients of texture map parameters in perspective space. The technique provides a way to calculate a texture gradient in the direction of viewing. This gradient is then used to calculate a pre-filtered textured value. This approach is dependent on viewpoint distance but has a relatively complicated implementation scheme and also does not address texture anisotropy.